//引入Vue核心库
import Vue from 'vue'
//引入Vuex
import Vuex from 'vuex'
//引入count
import countOptions from './count'
//引入person
import personOptions from './person'
//应用Vuex插件
Vue.use(Vuex)

// //准备actions对象----响应组件中用户的动作、处理业务逻辑
// const actions = {
//   addOdd(context, value) {
//     console.log("actions中的addOdd被调用了")
//     if (context.state.sum % 2) {
//       context.commit('ADD', value)
//     }
//   },
//   addWait(context, value) {
//     console.log("actions中的addWait被调用了")
//     setTimeout(()=>{
//       context.commit('ADD', value)
//     },500)
//   }
// }
// //准备mutations对象----修改state中的数据
// const mutations = {
//   ADD(state, value) {
//     state.sum += value
//   },
//   SUBTRACT(state, value) {
//     state.sum -= value
//   },
//   ADD_PERSON(state, value) {
//     console.log('mutations中的ADD_PERSON被调用了')
//     state.personList.unshift(value)
//   }
// }
// //准备state对象----保持具体的数据
// const state = {
//   sum: 0, //当前的和
//   name: 'JOJO',
//   school: '清华大学',
//   personList:[
//     {id:'001',name: 'JOJO'}
//   ]
// }
//
// //准备getters对象----用于将state中的数据进行加工
// const getters = {
//   bigSum() {
//     return state.sum * 10
//   }
// }

//创建并暴露store
export default new Vuex.Store({
  // actions,
  // mutations,
  // state,
  // getters,
  modules: {
    countAbout: countOptions,
    personAbout: personOptions,
  }
})
